function editar(record) {
	try {
		var f = document.getElementById("editarform");
    	Z.ClearForm(f); 
    	
		var nuevo = record.getData("nuevo");
		Dom.get("nuevo").value = nuevo;
		if(nuevo==true ||nuevo=="true"){
			f.elements["editarNuevo"].value = true;
			f.elements["parametro.username"].disabled=false;
			f.elements["parametro.rolId"].disabled=false;
		}else{
			f.elements["editarNuevo"].value = false;
			f.elements["parametro.username"].disabled=true;
			f.elements["parametro.rolId"].disabled=true;
		}
		
		Dom.get("recordid").value = record.getId();
		Dom.get("vigente").value = record.getData("vigente");
		Dom.get("username").value= record.getData("username" );
		Dom.get("password").value= record.getData("password" );
		Dom.get("nombre").value = record.getData("nombre");
		Dom.get("idPais").value = record.getData("idPais");
		Dom.get("idRol").value = record.getData("idRol");
		
		
		Context.dialog1.setHeader("Editar Usuario");
		Context.dialog1.show();
	} catch (e) {
		alert("editar: " + e + e.description);
	}
}

function guardarUsuarios() {
	try {
		
		var f = document.getElementById("MercanciaForm");
		f.elements["jsonrecords"].value = Context.table.getJsonRecords();

		var callback = new Z.JsonCall();
		callback.exito = function(data) {
			Context.table.update();
		};
		callback.fallo = function(messages) {
			alert("error")
		};
		
		Z.ShowWait();
		Y.util.Connect.setForm(f);
		var request = Y.util.Connect.asyncRequest('POST', Context.Guardar, callback);
		
	} catch (e) {
		alert("guardar: " + e + e.description);
	}
};

function procesa() {
	try {
		var nuevo = Dom.get("nuevo").value;
		var editarNuevo = Dom.get("editarNuevo").value;
		var recordid = Dom.get("recordid").value;
		var oData = {};
		Dom = Y.util.Dom;
		
		oData['recordid'] = recordid;
		oData['username'] = Dom.get("username").value;
		oData['password'] = Dom.get("password").value;
		oData['nombre'] = Dom.get("nombre").value;
		oData['idPais'] = Dom.get("idPais").value;
		oData['pais'] = Dom.get("idPais").options[Dom.get("idPais").selectedIndex].text;
		oData['idRol'] = Dom.get("idRol").value;
		oData['rol'] = Dom.get("idRol").options[Dom.get("idRol").selectedIndex].text;
		
		oData['nuevo'] = nuevo;
		oData['eliminado'] = false;

		 if(nuevo == true || nuevo=="true"){
			 if(editarNuevo== true || editarNuevo=="true"){
				 oData['vigente'] = Dom.get("vigente").value;
				 myDataTable.actualizarRegistro(oData);
			 }else{
				 oData['vigente'] = 'I'
				 myDataTable.insertarRegistro(oData);
			 }
		} else {
			oData['vigente'] = Dom.get("vigente").value;
			myDataTable.actualizarRegistro(oData);
		}
		
	} catch (e) {
		alert("procesa : " + e.description + " " + e.message)
	}
	
}


function validar() {
	try {
		var f = document.getElementById("editarform");

		var callback = new Z.JsonCall();
		callback.exito = function(data) {
			
			procesa();
			Context.dialog1.hide();
			
		};
		
		Y.util.Connect.setForm(f);
		
		var request = Y.util.Connect.asyncRequest('POST', Context.ValidarURL, callback);

	} catch (e) {
		alert("validar: " + e + e.description);
	}
};


/**
 * 
 ************************************* DIALOGOS*********************************************
 * 
 */
function creardialogo() {
	Context.dialog1 = new Y.widget.Dialog("dialog1", {
		width : "30em",
		
		fixedcenter : true,
		visible : false,
		constraintoviewport : true,
		modal : true,
		zindex : 5,
		buttons : [ {
			text : "Aceptar",
			handler : function(){
				validar();
			},
			isDefault : true
		}, {
			text : "Cancelar",
			handler : function(){
				Context.dialog1.hide();
			}
		} ]
	});
	var kw = new Y.util.KeyListener(document, {
		keys : 27
	}, {
		fn : Context.dialog1.hide,
		scope : Context.dialog1,
		correctScope : true
	});
	kw.enable();
	Context.dialog1.render(document.body);
	
	
	
}


/**
 * *************EVENTOS DE BOTONES***************************
 */


function crearbotones() {


	new Y.widget.Button("guardarbutton", {
		onclick : {
			fn : function() {
				guardarUsuarios();
			}
		}
	});
	
	new Y.widget.Button("agregarbutton", {
		onclick : {
			fn : function() {
				var f = document.getElementById("editarform");
		    	Z.ClearForm(f); 
		    	Dom.get("username").disabled=false;
				Dom.get("nuevo").value=true;
				Dom.get("idRol").disabled=false;
				Context.dialog1.setHeader("Agregar");
				Context.dialog1.show();
			}
		}
	});
	
	Z.mercAgregarButton = new Y.widget.Button("agregarbuttonmerc", {
		onclick : {
			fn : function() {
				Context.dialog2.show();
			}
		},
		disabled:true
	});
	
	Z.mercGuardarButton = new Y.widget.Button("guardarbuttonmerc", {
		onclick : {
			fn : function() {
				guardarMercancia();
			}
		},
		disabled:true
	});

};

Y.util.Event.onDOMReady(function() {
	try {
		creardatatable();
		crearbotones();
		creardialogo();
		Context.table.update();
	} catch (e) {
		alert(e);
	}
});
